package com.car.rental.user.service;

import com.car.rental.common.core.response.ResponseResult;
import com.car.rental.user.model.request.DriverLicenseRequest;
import com.car.rental.user.model.response.DriverLicenseResponse;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface DriverLicenseService {
    
    /**
     * 提交驾驶证认证
     */
    ResponseResult<Void> submitLicense(Long userId, DriverLicenseRequest request);
    
    /**
     * 获取驾驶证信息
     */
    ResponseResult<List<DriverLicenseResponse>> getLicenseInfo(Long userId);
    
    /**
     * 更新驾驶证认证状态
     */
    ResponseResult<Void> updateLicenseStatus(Long userId, String licenseNumber, Integer status, String remark);
    
    /**
     * 检查用户是否已通过驾驶证认证
     */
    ResponseResult<Boolean> checkLicenseVerified(Long userId);
    
    /**
     * 更新驾驶证信息
     */
    ResponseResult<Void> updateLicense(Long userId, DriverLicenseRequest request);
    
    /**
     * 上传驾驶证照片
     */
    ResponseResult<String> uploadLicenseImage(Long userId, MultipartFile file);
    
    /**
     * 获取所有驾驶证列表
     */
    ResponseResult<List<DriverLicenseResponse>> getAllLicenses();
} 